package toControl;

import CMD.FontCMD;
import CMD.InfoCMD;
import CMD.KeyCMD;
import CMD.MapCMD;
import CMD.RefreshCMD;
import CMD.RoleCMD;
import CMD.SaveCMD;
import gameFrame.GameFrame;
import gameFrame.GameManuFrame;
import gameFrame.MainManuFrame;
import gameFrame.OutFrame;
import kitBox.S;
import reader.DataReader;
import reader.IniReader;
import reader.SaveFileReader;

public class InitialCMD {
	private static InitialCMD ic = new InitialCMD();
	
	private OutFrame of;
	private MainManuFrame mmf;
	private GameManuFrame gmf;
	private GameFrame gf; 
	
	public OutFrame getOf()
	{
		return of;
	}
	public static InitialCMD getInitialCMD()
	{
		return ic;
	}
	private void initialCMD()
	{
		DataReader.getDataReader();
		IniReader.getIniReader();
		SaveFileReader.getSaveFileReader();
		
		KeyCMD.getKeyCMD();
		FontCMD.getFontCMD();
		RoleCMD.getRoleCMD();
		MapCMD.getMapCMD();
		SaveCMD.getSaveCMD();
		InfoCMD.getInfoCMD();
		RefreshCMD.getRefreshCMD().start();
		
	}
	private void initialFrame()
	{
		of = OutFrame.getOutFrame();
		mmf = MainManuFrame.getMainManuFrame();
		gmf = GameManuFrame.getGameManuFrame();
		gf = GameFrame.getGameFrame();
		
	}
	private void addComponent()
	{
		
		KeyCMD.getKeyCMD().setBounds(0,0,0,0);
		of.add(gmf);
		of.add(gf);
		of.add(KeyCMD.getKeyCMD());
		of.add(mmf);
		
		S.p(of.getComponentCount());
		of.repaint();
		mmf.repaint();
		KeyCMD.getKeyCMD().grabFocus();
	}
	
	
	public InitialCMD()
	{
		initialCMD();
		initialFrame();
		addComponent();
	}
	/**
	 */
	public void exitGame()
	{
		
	}
	
	
	public static void main(String[] args)
	{
		InitialCMD ic = InitialCMD.getInitialCMD() ;
		ic.getClass();
	}
}
